package linklist.middle;

import com.sun.jmx.remote.internal.ArrayQueue;

import java.util.ArrayDeque;
import java.util.Queue;

/**
 * 1. 问题描述
 *      多级双向链表中，除了指向下一个节点和前一个节点指针之外，它还有一个子链表指针，
 *      可能指向单独的双向链表。这些子列表也可能会有一个或多个自己的子项，依此类推，生成多级数据结构，如下面的示例所示。
 *      给你位于列表第一级的头节点，请你扁平化列表，使所有结点出现在单级双链表中。
 *
 * 2. 算法分析
 *
 *
 * 3. 代码实现
 */
@SuppressWarnings("all")
public class Q001_扁平化多级链表 {
    class Node {
        public int val;
        public Node prev;
        public Node next;
        public Node child;
    };

    public Node flatten(Node head) {
        Node res = new Node(); // 带头节点的链表
        ArrayDeque<Node> deque = new ArrayDeque<>();
        return res;
    }
}
